package com.example.demo.entity.table;

import com.mybatisflex.core.query.QueryColumn;
import com.mybatisflex.core.table.TableDef;

/**
 *  表定义层。
 *
 * @author zql
 * @since 2023-11-16
 */
public class CardTableDef extends TableDef {

    /**
     * 
     */
    public static final CardTableDef CARD = new CardTableDef();

    
    public final QueryColumn ID = new QueryColumn(this, "id");

    
    public final QueryColumn TYPE = new QueryColumn(this, "type");

    
    public final QueryColumn EMAIL = new QueryColumn(this, "email");

    
    public final QueryColumn OPTIONS = new QueryColumn(this, "options");

    
    public final QueryColumn VERSION = new QueryColumn(this, "version");

    
    public final QueryColumn ID_NUMBER = new QueryColumn(this, "idNumber");

    
    public final QueryColumn LOCATION = new QueryColumn(this, "location");

    
    public final QueryColumn TENANT_ID = new QueryColumn(this, "tenantId");

    
    public final QueryColumn CREATE_TIME = new QueryColumn(this, "createTime");

    
    public final QueryColumn DELETE_FLAG = new QueryColumn(this, "deleteFlag");

    
    public final QueryColumn UPDATE_TIME = new QueryColumn(this, "updateTime");

    /**
     * 所有字段。
     */
    public final QueryColumn ALL_COLUMNS = new QueryColumn(this, "*");

    /**
     * 默认字段，不包含逻辑删除或者 large 等字段。
     */
    public final QueryColumn[] DEFAULT_COLUMNS = new QueryColumn[]{ID, ID_NUMBER, LOCATION, CREATE_TIME, UPDATE_TIME, DELETE_FLAG, VERSION, TENANT_ID, OPTIONS, EMAIL, TYPE};

    public CardTableDef() {
        super("", "tb_card");
    }

}
